#pragma once

#include <iostream>
#include <unordered_map>
#include <memory>

class Session
{
public:
    Session()
    {}
    ~Session()
    {}
private:
    std::string username;
    std::string password;
    int status;
    uint64_t login_time;
};

using session_ptr = std::unique_ptr<Session>;

class SessionManager
{
public:
    SessionManager()
    {}
    ~SessionManager()
    {}
    std::string AddSession(std::string username, std::string password)
    {
        //
    } 
    bool DelSession(std::string &sessionid)
    {}
    void ModSession(std::string &sessionid, session_ptr session)
    {}
    session_ptr SearchSession(std::string &sessionid)
    {}
private:
    std::unordered_map<std::string, session_ptr> sessions;
};
